package net.realsee.domain.wcs.rcs.irayple;

import lombok.Data;

/**
 * 华睿回调实体
 *
 * @author 戴俊宇
 * @since 2023/10/30 上午 10:22
 **/
@Data
public class IRayPleRcsAgvCallback {

    /**
     * 第三方系统任务 id
     */
    private String orderId;

    /**
     * 当前子任务预到达目标点，对应任务下发时下发的点位
     */
    private String qrContent;

    /**
     * AGV 编号
     */
    private String deviceNum;

    /**
     * AGV 序列号
     */
    private String deviceCode;

    /**
     * 任务状态：
     * 3：已取消
     * 5：发送失败
     * 6：运行中
     * 7：执行失败
     * 8：已完成
     * 9：已下发
     * 10：等待确认
     * 20：取货中
     * 21：取货完成
     * 22：放货中
     * 23：放货完成
     */
    private String status;

    /**
     * 立体库编号，对应立体库位置
     */
    private String storageNum;

    /**
     * 任务流程模版编号
     */
    private String modelProcessCode;

    /**
     * 任务执行失败，或者发送给 AGV 时失败的失败原因
     */
    private String errorDesc;

    /**
     * 货架编号
     */
    private String shelfNumber;

    /**
     * 货架当前位置
     */
    private String shelfCurrPosition;

    /**
     * RCS 任务模版中的 AGV 执行到的动作状态，
     * 扩展字段：
     * 1：未开始
     * 2：运行中
     * 3：完成中
     * 4：失败
     * 5：取消
     */
    private String subTaskStatus;

    /**
     * AGV 动作类型，扩展字段
     */
    private String subTaskTypeId;

    /**
     * RCS 子任务编号，备用字段
     */
    private String subTaskId;

    /**
     * 第几个动作，从 0 开始，扩展字段
     */
    private String subTaskSeq;

    /**
     * ICS 记录的此任务的 id 值，扩展字段
     */
    private String icsTaskOrderDetailId;


}
